Monografias.com > Sin categoría
Descargar Imprimir Comentar Ver trabajos relacionados

Implementación de Jakarta Struts (página 2)




Enviado por Pablo Turmero



Partes: 1, 2

Monografias.com

Apache Jakarta Struts
Implementación del modelo 2/patrón de diseño MVC que facilita la creación de aplicaciones web en Java
Creada por Craig McClanahan y donada a la Apache Software Foundation en el 2000 (pertenece a Apache Jakarta)

Monografias.com

¿Qué proporciona Struts?
Un servlet (ActionServlet) que actúa como controlador MVC totalmente configurable
Clases base que son extendidas para implementar la lógica de la aplicación web:
Struts Action
Struts ActionForm
Un rico conjunto de etiquetas personalizadas JSP que cooperan con el controlador para su uso en la capa view de MVC
Varias opciones para la validación de entrada de usuario en formularios HTML: ActionForm o Validator Framework
Mecanismos para el manejo y reporte de errores
Soporte para la internacionalización (i18n) a través de ficheros de recursos y Java Locales
Soporte para fuentes de datos
Y más …..

Monografias.com

Instalando Apache Struts I
Instalar Apache Tomcat 4.x o superior se recomienda un Tomcat 5.5
Actualmente en la versión 1.3.5 (recientemente ha salido la version 2.0)
Lo mejor es tomar la aplicación struts-blank.war como punto de partida.
Para esto lo mejor es importar el archivo .war en eclipse que incluye un asistente para dicha tarea.

Monografias.com

Actions en Struts
Se crea una acción extendiendo la clase org.apache.struts.action.Action
El ActionServlet ejecuta acciones invocando el método execute() tu clase Action
El método execute() contiene código para manipular el modelo
Dentro del método execute() tienes acceso a:
Cabeceras y parámetros de peticiones HTTP
Atributos/beans guardados en los contextos application/session/request scope
Struts ActionForm asociados con la acción (opcional)
El ActionMapping associado a esta acción (opcional)
El objeto httpResponse
El método execute() devuelve un objeto ActionForward que indica al ActionServlet a dónde transferir el control a continuación

Monografias.com

Form Beans
Un ActionForm es un JavaBean con propiedades que corresponden a los controles de un formulario HTML. Los parámetros son mapeados a propiedades del bean.
Proveen un mecanismo de buffer/validate/convert que necesitamos para asegurarnos que el usuario introduce los datos esperados
Actúa como puente entre el navegador y el objeto de negocio
El programador define un form bean extendiendo la clase org.apache.struts.action.ActionForm (o de forma declarativa usando org.apache.struts.action.DynaActionForm)
Hay que definir cada una de las propiedades en la clase y escribir los getters/setters correspondientes, siguiendo las reglas de JavaBeans
Después de escribir el código del form bean, es necesario asociarlo con una o más acciones a través del fichero de configuración de Struts struts-config.xml
Cada vez que se llama a la acción , el ActionServlet poblará las propiedades con los valores de los parámetros recibidos en el formulario HTML
Las propiedades no sólo pueden ser escalares sino que también pueden ser colecciones de valores

Monografias.com

¿Por qué se necesitan Forms Beans?
¿Por qué no simplemente se accede a los parámetros de una petición, en vez de usar un form bean como intermediario?
Razones:
Los Form beans pueden ser validados antes de que una acción sea invocada
Si la propiedad validate de un elemento Action en el fichero struts-config.xml contiene el valor true (por defecto), el método validate será invocado
Si un form bean falla en la validación puede hacer que Struts envíe al usuario de vuelta a la vista (JSP) desde la que se realizó el POST en primer lugar, junto con un mensaje de error
Es importante asignar a la propiedad input del elemento action en struts-config.xml una referencia a la vista que entregó el formulario
Los form beans pueden ser usados por múltiples acciones o incluso una aplicación completa
Si se configura al ActionController para que guarde un form bean en el contexto de sesión se permitirá el uso del form bean en todas las peticiones web que llegan a la aplicación

Monografias.com

Dynamic Action Forms
Son ActionForms creados de manera declarativa en struts-config.xml
Una o varias propiedades dinámicas pueden ser pasadas a una instancia de org.apache.struts.action.DynaActionForm

Monografias.com

Recursos de String/Manejo de Errores
Recursos de String
Todos los strings usados en mensajes en JSPs tanto de datos de aplicación como de errores puedes ser colocados en un ficheros de recursos (ApplicationResources.properties)
Struts proporciona etiquetas personalizadas JSP tags para acceder a estos recursos
Manejo de errores
Se recomienda que el manejo de errores se lleve a cabo dentro del método execute() y el control se transfiera a la vista apropiada
errors.add("passphrase",new ActionError("error.passphrase.required"));
Struts proporciona un mecanismo separado para permitir la implementación de un manejador global de excepciones
Struts proporciona etiquetas JSP que ayudan en la visualización de los errores en tu JSP:

Monografias.com

Struts Tag Libraries
Documentadas en http://www.onjava.com/lpt/a/4034
La framework Struts proporciona un conjunto de 6 librerías de etiquetas, que asisten en la tarea de la creación de la vista de MVC para evitar incluir código Java en los JSPs:
Bean Tags
HTML Tags
Logic Tags
Las funcionalidad de las etiquetas definidas en las librerías Bean y Logic es también provista por las librerías core y fmt de JSTL
Se recomienda el uso de las librerías en JSTL

Monografias.com

HTML Tags
Estas etiquetas son principalmente usadas para:
Crear formularios de entrada de datos y
Otras utilidades para visualizar interfaces basados en HTML.
Algunas de las acciones más útiles son:
base ? genera un elemento HTML
errors ? condicionalmente visualiza un conjunto acumulado de mensajes de error
form ? define un formulario de entrada
text ? visualiza un campo de entrada de tipo texto
messages ? condicionalmente visualiza un conjunto de mensajes acumulados
submit ? visualiza un botón de entrega
Etc.

Monografias.com

Logic Tags
Usadas para:
Iterar sobre colecciones
Generación condicional de salida, y
Flujo de aplicación
Algunas de las acciones más útiles son:
present ? genera el contenido de marcado dentro de esta etiqueta si el valor indicado es encontrado en esta petición
notPresent ? lo opuesto a present
iterate ? repite el contenido anidado dentro de esta etiqueta al iterar sobre una colección
forward ? transfiere control a la página especificada por la entrada ActionForward.
Etc.

Monografias.com

Bean Tags
Usadas pricipalmente para:
Escribir por pantalla los valores de los request en los jsp.
Definir atributos en el contexto de la pagina en tiempo de compilación.
Algunas de las mas usadas son:
Define: define un atributo en el contexto de la petición en tiempo de compilación.
Write: muestra por pantalla un valor de un objeto que se encuentre en el contexto de la petición.

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter